Page({
  data: {
    phoneNumber: null,
    showManualInput: false,
    manualPhoneNumber: ''
  },
  getRealtimePhoneNumber(e){
     console.log("e",e)
  },
  getPhoneNumber(e) {
    console.log(e)
    if (e.detail.errMsg === 'getPhoneNumber:ok') {
      const encryptedData = e.detail.encryptedData;
      const iv = e.detail.iv;
      console.log('encryptedData:', encryptedData);
      console.log('iv:', iv);
      wx.login({
        success: (res) => {
            // 将 encryptedData 和 iv 发送到服务器进行解密
            var code=res.code
            this.decryptPhoneNumber(encryptedData, iv,code);
            // 显示手动输入手机号的组件
            this.setData({
              showManualInput: true
            });
          }
  })
}else {
  console.log('获取手机号失败', e.detail);
}
  },
  decryptPhoneNumber(encryptedData, iv,code) {
    // 发送 encryptedData 和 iv 到服务器进行解密
    wx.request({
      url: 'https://27f2753z73.zicp.vip/Service.asmx/GetPsonWxPhoneNumber', // 替换为你的服务器地址
      method: 'POST',
      header: {
        'content-type': 'application/json',
        "content-type": "application/x-www-form-urlencoded"
      },
      data: JSON.stringify({
        UserWx_EncryptedData:encryptedData,
        UserWx_aesIv: iv,
        UserWxCode:code
      }),
      success: (res) => {
        console.log('解密后的手机号:', JSON.parse(res.data.RltData).phoneNumber);
        const phoneNumber=JSON.parse(res.data.RltData).phoneNumber
        // 处理解密后的手机号
        this.setData({
          phoneNumber: phoneNumber,
          manualPhoneNumber:phoneNumber
        });
      },
      fail: (res) => {
        console.log('解密失败:', res);
        // 显示手动输入手机号的组件
        this.setData({
          showManualInput: true
        });
      }
    });
  },

  onPhoneNumberInput(e) {
    this.setData({
      manualPhoneNumber: e.detail.value
    });
  },

  submitManualPhoneNumber() {
    const phoneNumber = this.data.manualPhoneNumber;
    if (this.validatePhoneNumber(phoneNumber)) {
      this.setData({
        phoneNumber: phoneNumber,
        showManualInput: false
      });
      // 可以在这里将手机号保存到服务器或其他操作
    } else {
      wx.showToast({
        title: '请输入有效的手机号',
        icon: 'none'
      });
    }
  },

  validatePhoneNumber(phoneNumber) {
    // 简单的手机号验证，可以根据需要调整正则表达式
    const regex = /^1[3-9]\d{9}$/;
    return regex.test(phoneNumber);
  }
});